<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
</body>
<script>
    // 异步指程序可以同时执行，同步指程序需要按照顺序执行。


    setTimeout(function () {
        console.log(2);
    }, 2000);


    // JS代码  => 同步任务  异步任务

    // 同步任务:
    // 异步任务:  事件   计时器 / 延时器   ajax

    // 同步
    // for (var i = 1; i <= 6; i++) {
    //     console.log(i);
    // }

    // console.log(1);
    // setTimeout(function () { // 异步  -> 从延时器启动,到回调函数执行 需要先等待2000ms
    //     console.log(2);
    // }, 2000);
    // console.log(3);


    // 循环6次 同时启动6个延时器 -> 全局i =6   => 2s后回调函数开始执行,自己作用域中没有i => 向外跳一层找全局作用域  => 6
    // for (var i = 0; i < 6; i++) {
    //     setTimeout(function () { // 异步  -> 从延时器启动,到回调函数执行 需要先等待2000ms
    //         console.log(i);
    //     }, 2000);
    // }
    // console.log("循环结束", i);  // 6


    console.log(1);
    setTimeout(function () {
        console.log(2);
    }, 0);
    console.log(3);




    // JS是单线程(执行线程)?







</script>

</html>